package com.example.mymvp.view.ui.fragment;

import com.example.mymvp.view.model.BaseModel;
import com.example.mymvp.view.presenter.BasePresenter;
import com.example.mymvp.view.view.BaseView;

/**
 * @Name：day07_demo
 * @Description：描述信息
 * @Author：86188 范嘉豪
 * @Date：2021/3/17 17:24
 * 修改人：86188 范嘉豪
 * 修改时间：2021/3/17 17:24
 * 修改备注：
 */
public abstract class BaseMvpFramgent<V extends BaseView,M extends BaseModel,P extends BasePresenter>  extends BaseFragment{
   public P mPerter;

    @Override
    protected void initData() {
        mPerter=createPresenter();
         if (mPerter!=null){
             mPerter.bindView((V)this);
         }
         initEvent();
    }

    protected abstract P createPresenter();

    protected abstract void initEvent();

    @Override
    public void onDestroy() {
        super.onDestroy();
        if (mPerter!=null){
            mPerter.destoryView();
            mPerter=null;
        }
    }
}
